const gulp = require('gulp');
const uglify = require('gulp-uglify');
const gzip = require('gulp-gzip');
const gulpIf = require('gulp-if');

// 判断文件是否为 JavaScript 文件
function isJavaScript(file) {
  return file.extname === '.js';
}

gulp.task('gzip', () => {
  return gulp.src('./public/**/*.{html,css,js,json,xml}')
    // .pipe(uglify())
    .pipe(gulp.dest('./dist')) // 保留源文件
    .pipe(gulpIf(isJavaScript, uglify())) // 只对 JavaScript 文件进行压缩
    .pipe(gzip({
      gzipOptions:{level:9},
      threshold:10*1024,
    }))
    .pipe(gulp.dest('./dist')); // 输出压缩后的文件
});

// gulp.task('default', gulp.series('gzip'));